package com.holyant.goods.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.domain.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class GdsSkuQuoteExportDto extends BaseDto {

    private static final long serialVersionUID = 1L;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;

    /** 申请人 */
    @Excel(name = "申请人")
    @ApiModelProperty(value = "申请人")
    private String createBy;

    /** sku编码 */
    @Excel(name = "sku编码")
    @ApiModelProperty(value = "sku编码")
    private String skuCode;

    /** sku名称 */
    @Excel(name = "sku名称")
    @ApiModelProperty(value = "sku名称")
    private String skuName;

    /** 商品条码 */
    @Excel(name = "商品条码")
    @ApiModelProperty(value = "商品条码")
    private String goodsBarcode;

    /** 商品名称 */
    @Excel(name = "商品名称")
    @ApiModelProperty(value = "商品名称")
    private String goodsName;

    /** 失效日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "效期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "效期")
    private LocalDate expireDate;

    /** 规格 */
    @Excel(name = "规格")
    @ApiModelProperty(value = "规格")
    private String specs;

    /** PCS */
    @Excel(name = "PCS")
    @ApiModelProperty(value = "PCS")
    private String pcs;

    /** 币种 */
    @Excel(name = "币种")
    @ApiModelProperty(value = "币种")
    private String curType;

    /** 报价方式 */
    @Excel(name = "报价方式")
    @ApiModelProperty(value = "报价方式")
    private String quotMethodName;

    /** 基础指导价 */
    @Excel(name = "基础指导价")
    @ApiModelProperty(value = "基础指导价")
    private BigDecimal oldPrice;
    /** 申请售价 */
    @Excel(name = "申请售价")
    @ApiModelProperty(value = "申请售价")
    private BigDecimal price;
    /** 调价金额 */
    @Excel(name = "调价金额")
    @ApiModelProperty(value = "调价金额")
    private BigDecimal priceAdjustRange;

    

    /** 调价幅度 */
    @Excel(name = "调价幅度")
    @ApiModelProperty(value = "调价幅度")
    private BigDecimal grossProfit;

    /** 生效日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "生效日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "生效日期")
    private LocalDateTime effectiveTimeStart;

    /** 失效日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "失效日期")
    private LocalDateTime effectiveTimeEnd;


    /** 适用客户 */
    @Excel(name = "适用客户")
    @ApiModelProperty(value = "适用客户")
    private String customerName;
    
    /** 适用渠道 */
    @Excel(name = "适用渠道")
    @ApiModelProperty(value = "适用渠道")
    private String channel;

    /** 预期订单数量 */
    @Excel(name = "预期订单数量")
    @ApiModelProperty(value = "预期订单数量")
    private BigDecimal estimatedAdditionQty;

    /**
     * 计划发货仓库
     */
    @Excel(name = "计划发货仓库")
    @ApiModelProperty(value = "计划发货仓库")
    private String warehouseName;
    
}
